Micron Document
Livres et Wikis | Archives | Info


Ligne de code
layout: Wide Β· Narrow Β· Centered
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
top
La ligne de code, ou ligne de code source (SLOC en anglais) est une mΓ©trique logicielle servant Γ  mesurer la taille d’un programme informatique en dΓ©nombrant le nombre de lignes de son code source.

Les lignes de code sont habituellement employΓ©es pour quantifier l'effort qui sera exigΓ© pour dΓ©velopper un programme informatique, ainsi que pour estimer la valeur d'un logiciel produit.

Contents

β€’ Outils
β€’ Voir aussi

──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

DifficultΓ© de la mesure

La ligne de code est un indicateur. Il est imparfait, et comporte des dΓ©fauts. Cependant, c'est un Γ©lΓ©ment, parmi d'autres, qui permet d'Γ©valuer le coΓ»t d'un programme.

Il y a plusieurs manières de mesurer la taille d'un programmecite-ref-1[1]:

β€’ nombre de lignes contenues dans les fichiers source : lignes physiques terminΓ©es par un retour chariot.
β€’ nombre de lignes de code contenues dans les fichiers source : lignes physiques - lignes vides - lignes contenant seulement des Commentaires (informatique).
‒ nombre de lignes de code avec des instructions contenues dans les fichiers source : lignes physiques - lignes vides - lignes contenant seulement des commentaires - lignes contenant seulement des accolades ou parenthèses.
β€’ nombre d'instructions

Incertitudes liΓ©es aux programmeurs

Suivant les programmeurs et leurs habitudes de programmation, le nombre de lignes peut varier.

Exemple :

for (i=0; i<100; ++i) printf("hello"); /* Ici 1 ligne de code */

Donne le mΓͺme rΓ©sultat que :

for (i=0; i<100; ++i)
{
printf("hello");
} /* Ici 4 lignes de code */

Cette diffΓ©rence en apparence importante (on passe d'une ligne Γ  quatre) dans cet exemple, simple, s'estompe avec des programmes plus importants, de plusieurs milliers de lignes.

Incertitudes liΓ©es au langage de programmation

Le nombre de lignes de code source nΓ©cessaires pour mettre en Ε“uvre une opΓ©ration donnΓ©e dΓ©pend du langage de programmation dans lequel est Γ©crit le code. Une opΓ©ration Γ©crite en 30 lignes en langage Smalltalk nΓ©cessitera 50 lignes en langage Java, 80 lignes en COBOL, 140 lignes en C et 210 lignes en assembleurcite-ref-2[2].

Suivant le langage utilisΓ©, le nombre de lignes nΓ©cessaires peut considΓ©rablement diffΓ©rer.

Par exemple entre le C et le COBOL :

| Langage | C |
|---|---|
| Code | #include <stdio.h> int main ( void ) {… |
| Nombre de lignes (sans compter les espa… | 5 |

| Langage | COBOL |
|---|---|
| Code | 000100 IDENTIFICATION DIVISION. 000200… |
| Nombre de lignes (sans compter les espa… | 17 |

Mesure alternative

Une autre unitΓ© de mesure est l'annΓ©e-homme, c'est-Γ -dire le nombre d'annΓ©es de programmation pour un programmeur unique. Par exemple, et en thΓ©orie, un programme de 20 annΓ©es-hommes pourrait Γͺtre rΓ©alisΓ© en 20 ans par un programmeur unique, ou en un an par une Γ©quipe de 20 programmeurs.

Cependant cette notion thΓ©orique comporte dans la pratique ses limites comme l’a soulignΓ© Frederick Brooks dΓ¨s 1975 dans son livre Le Mythe du mois-homme. Il y explique que toute tΓ’che n’est pas forcΓ©ment fractionnable, et que l’ajout de personnel introduit par exemple des dΓ©lais supplΓ©mentaires en formation, et en coordination qui peuvent fortement rΓ©duire la productivitΓ©.

Outils
Voir aussi

Article connexe
Notes et rΓ©fΓ©rences

cite-note-11. ↑ (en) DΓ©finition des mΓ©triques dans SonarQube
cite-note-22. ↑ (en) Β« Function point per language table Β»

β€’ Portail de la programmation informatique